import platform = require('../common/baseCommon');

/**
 * 模块名称
 */
export const moduleName = "platform";

/** 
 * 用户登录接口
*/
@platform.addon("用户登录接口", "用户登录接口（可用于远程代理）", moduleName)
export class IUserLogin {
    /**
     * 登录
     * @param userinfo 用户信息
     */
    login(userinfo: platform.userToken): Promise<platform.ResponseMessage<platform.userToken>> {
        return undefined;
    }

    /**
     * 获取手机验证码
     * @param mobile 手机号码
     * @param tpl_id 模板id
     * @param codeLen 验证码长度
     */
    getCode(mobile: string, tpl_id: number, codeLen: number) {
        return undefined;
    }
    codelogin(mobile:string,tempCode: string): Promise<platform.ResponseMessage<any>> {
        return undefined;
    }
    /**
     * 登出
     * 
     * @param user 用户信息
     */
    logout(userRq: platform.userToken): Promise<platform.ResponseMessage<platform.userToken>> {
        return undefined;
    }

}

@platform.addon("发送手机短信接口", "发送手机短信（可用于远程代理）", moduleName)
export class ISMSPlatform {
    /**
     * 发送手机短信
     * @param mobile 手机号码
     * @param text 短信内容
     * @param templateid 模板id
     */
    sendmessages(mobile: string, text: string, templateid: number) {
        return undefined;
    }

    /**
     * 发送验证码
     * @param mobile 手机号码
     * @param tpl_id 模板id
     * @param codeLen 验证码长度
     */
    sendverificationcode(mobile: string, tpl_id: number, codeLen: number): Promise<string> {
        return undefined;
    }
    /**
     * 
     * @param mobile 手机号码
     * @param tpl_id 模板id
     * @param tpl_value 对应模板内容
     */
    sendsmstemplate(mobile: string, tpl_id: number, tpl_value: any) {
        return undefined;
    }
}

/**
 * 纳税人信息服务
 */
@platform.addon("纳税人信息服务接口", "纳税人信息服务", moduleName)
export class INsrxxService {
    /**
     * 查询纳税人信息
     * @param userinfo 
     */
    querytaxpayerinformation(userinfo: platform.userToken): Promise<platform.ResponseMessage<platform.userToken>>{
        return undefined;
    }
}